1. Field of the Invention
This invention relates to digital audio compression and, more particularly, to MPEG audio encoding.
2. Description of the Related Art
The computational capability of modern computer systems and the use of compression algorithms have made the use of complex multimedia applications possible. For example, a personal computer or workstation may be capable of running applications that allow a user to listen to high quality music reproductions or watch a motion picture. Compression algorithms may allow a digital signal to be transferred at a very high bit rate.
There are many compression algorithms available for compressing digital audio signals such as Code Excited Linear Prediction (CELP), μ-law and Adaptive Differential Pulse Code Modulation (ADPCM). Compressing an audio signal allows a higher bit density to be transmitted from an encoding device to a decoding device and it allows a higher bit density when storing an audio sample to a storage medium such as a compact disk (CD).
Another compression algorithm, known as the (MPEG)/audio compression algorithm, was developed by the Moving Picture Experts Group as an international standard for compressing high-fidelity audio. The MPEG/audio standard is one part of a three-part standard relating to the compression of audio and video and the synchronization of the respective audio and video streams. For a more detailed description of the MPEG/audio compression algorithm, see the ISO/IEC 11 172-3 standard.
The MPEG/audio compression standard is based on the perceptual limitations of the human auditory system. Thus, the portions of an audio signal that may be either out of the normal auditory range or masked by stronger portions are removed from the signal. Although the removal of these components results in a distorted signal, the distortions may either be inaudible or barely perceptible.
In an MPEG encoder, incoming digital audio samples are separated into frequency bands and encoded. This may be accomplished using a polyphase filter bank and a psychoacoustic model. The filter bank may utilize one form of a discrete cosine transform. The psychoacoustic model may use a Fourier transform for frequency domain transformation. In the psychoacoustic model, the frequency spectra are then separated into sub-bands and calculations are performed to determine the signal-to-mask ratios used in final quantization and encoding of the digital samples.
Many computer systems run multimedia application software that allows a user to view MPEG movies or listen to MPEG audio. As multimedia applications have become more sophisticated, the demands placed on computers have increased. Microprocessors are now routinely provided with enhanced support for these applications. For example, many processors now support single-instruction multiple-data (SIMD) commands such as MMX instructions. Advanced Micro Devices, Inc. (hereinafter referred to as AMD) has implemented 3DNow!™, a set of floating point SIMD instructions on x86 processors such as the Athlon™ processor. Software applications may use these instructions to accomplish signal processing functions and the traditional x86 instructions to accomplish other desired functions.
However, though the above instructions may be efficient, the repeated execution of some of the encoder compression floating point calculations may take as much as 25% of the computational overhead of an MPEG/audio compression algorithm. Therefore, a more efficient way of performing the calculations associated with the psychoacoustic model is desired.